Skip to content

Driver mempool - #46

Merged
jonwright merged 3 commits into
mainfrom
driver-mempool
Nov 13, 2026
Merged

jonwright merged 3 commits into
mainfrom
driver-mempool

Conversation

@jonwright

Copy link
Copy Markdown
Owner

No description provided.

jonwright and others added 3 commits November 13, 2026 18:53
cuMemFree waits for the whole device, so a loop of decompress() calls on
the driver backend paid for it on every output array.  Device memory now
comes from a stream-ordered pool of our own per device (cuMemPoolCreate,
release threshold max, as cupy keeps its blocks); free_pool() trims it.
Drivers before CUDA 11.2 and devices without pools keep cuMemAlloc.

decompress() of 8 Eiger-4M uint32 frames per call, 200 calls, L40S:
3.35 -> 1.55 ms per call (cupy 1.57); one frame per call 1.02 -> 0.55 ms.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
… 12.9

CUDA 12.9 is the only toolkit with both sm_50 and Blackwell.  The PTX
stays compute_90 (--ptx) so the JIT still covers any GPU without a cubin.
Same speed as the 12.6 cubins on an L40S; tests pass on L40S and H100.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@jonwright
jonwright merged commit bd9bd1d into main Nov 13, 2026
26 checks passed
@jonwright
jonwright deleted the driver-mempool branch November 14, 2026 08:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant